package com.base.service.system.ao;

import java.io.Serializable;
import java.util.List;

import com.gitee.magic.core.valid.annotation.BooleanValid;
import com.gitee.magic.core.valid.annotation.Format;
import com.gitee.magic.core.valid.annotation.Format.FormatType;
import com.gitee.magic.core.valid.annotation.Length;
import com.gitee.magic.core.valid.annotation.NotNull;
import com.gitee.magic.core.valid.annotation.number.LongValid;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 用户创建更新
 *
 * @author Start
 */
@Getter@Setter@ToString
public class UserUpdateAO implements Serializable {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Schema(description="userId")
    @NotNull
	@LongValid
    private Long id;

    @Schema(description="姓名")
    @Length(max = 10)
    private String name;
    
    @Schema(description="密码")
    @Format(type = FormatType.MD5)
    private String password;

    @Schema(description="状态")
    @BooleanValid
    private Boolean disable;

    @Schema(description="角色ID")
    @Format(type = FormatType.JSONArrayLong)
    private List<Long> roleIds;
    
}
